perm filename MIDSOL[F75,JMC] blob sn#187277 filedate 1975-11-14 generic text, type T, neo UTF8

(DEFPROP ALLFNS
 (NIL LOCATIONS REPLACEIN REPLACELIS FAST1)
VALUE)

(DEFPROP LOCATIONS
 (LAMBDA(E U)
  (COND	((EQUAL E U) (QUOTE (NIL)))
	((ATOM U) NIL)
	(T
	 (APPEND (MAPCAR (FUNCTION (LAMBDA (V) (CONS (QUOTE A) V))) (LOCATIONS E (CAR U)))
		 (MAPCAR (FUNCTION (LAMBDA (V) (CONS (QUOTE D) V))) (LOCATIONS E (CDR U)))))))
EXPR)

(DEFPROP REPLACEIN
 (LAMBDA(E NEW PLACE)
  (COND	((NULL PLACE) NEW)
	((EQ (CAR PLACE) (QUOTE A)) (CONS (REPLACEIN (CAR E) NEW (CDR PLACE)) (CDR E)))
	((EQ (CAR PLACE) (QUOTE D)) (CONS (CAR E) (REPLACEIN (CDR E) NEW (CDR PLACE))))))
EXPR)

(DEFPROP REPLACELIS
 (LAMBDA (E NEW U) (COND ((NULL U) E) (T (REPLACELIS (REPLACEIN E NEW (CAR U)) NEW (CDR U)))))
EXPR)

(DEFPROP FAST1
 (LAMBDA(E U)
  ((LAMBDA (VAR) (LIST (LIST (QUOTE LAMBDA) (LIST VAR) (REPLACELIS E VAR (CDR U))) (CAR U))) (GENSYM)))
EXPR)